home *** CD-ROM | disk | FTP | other *** search
- 100 sys36864:.opt oo:*= $c000
- 110 ;
- 120 ;**********************************
- 130 ;* cutter $c000-$c04c *
- 140 ;* (w)1991 by silvan reinhold *
- 150 ;**********************************
- 160 ;
- 170 : jsr getpar ;adresse der startzeile errechnen
- 180 : sta $57 ;low- und
- 190 : stx $58 ;high-byte speichern
- 200 : jsr getpar ;adresse der endzeile berechnen
- 210 : sta $59 ;low- und
- 220 : stx $5a ;high-byte zweimal
- 230 : sta $5b ;speichern
- 240 : stx $5c
- 260 : ldy #$00 ;schleife vorbereiten
- 270 : ldx #$01 ;(zwei durchlaeufe)
- 280 :label0 lda ($59),y ;die beiden letzten bytes auf
- 290 : pha ;dem stack ablegen und
- 300 : tya ;durch nullbytes (programmende)
- 310 : sta ($59),y ;ersetzen
- 320 : inc $59 ;dabei programmendezeiger auf das
- 330 : bne label1 ;byte hinter dem letzten nullbyte
- 340 : inc $5a ;stellen
- 350 :label1 dex
- 360 : bpl label0
- 380 : jsr $aefd ;kein komma, dann syntax error
- 390 : jsr $e1d4 ;parameter zum speichern holen
- 400 : lda #$57 ;start- und
- 410 : ldx $59 ;endadresse uebergeben
- 420 : ldy $5a
- 430 : jsr $ffd8 ;zum speichern
- 450 : ldy #$01 ;zwei schleifendurchlaeufe vorbereiten
- 460 :label2 pla ;die ersetzten bytes wieder
- 470 : sta ($5b),y ;vom stapel zurueckholen
- 480 : dey
- 490 : bpl label2
- 500 : rts ;ende
- 510 ;----------------------------------
- 520 :getpar jsr $aefd ;kein komma, dann syntax error
- 530 : jsr $ad8a ;zeilennummer aus dem basictext
- 540 : jsr $b7f7 ;holen
- 550 : jsr $a613 ;startadresse berechnen
- 560 : lda $5f ;low-byte in den akku (high-byte im x-register)
- 570 : rts ;zurueck vom unterprogramm
- 580 ;----------------------------------
- 590 : .end
-